Arquivo da tag: engenharia de requisitos

O que você precisa saber ao optar por um curso de engenharia de requisitos

 

engenharia de requisitos

 

O texto a seguir foi extraído de uma consulta feita por um dos interessados nesta formação, sendo que levanta algumas questões que são de interesse de todos. Assim, resolvemos publicar a resposta em forma de blog, pois desta forma estará disponível para qualquer consulta posterior:

 

"A Engenharia de Requisitos é uma área de conhecimento da Engenharia de Software. Você tem razão quando coloca que essa é uma área que menos envolve a execução do desenvolvimento de um software. Ela pode ser adaptada para a captura de Requisitos de Negócio de qualquer projeto empresarial. Porém, quando falamos de Engenharia de Requisitos voltada para ambientes de desenvolvimento de software, ela requer que o Analista de Requisitos, possua conhecimentos de desenvolvimento de sistemas. Ela necessita para esse fim, o conhecimento de diagramas em UML, especificação detalhada para a construção de um software, pois é a entrada para a execução, para o planejamento e para as estimativas de esforço e prazo. No caso de ponto de função, é preciso separar as funções de dados das funções transacionais, é preciso da mesma forma identificar ALI(Arquivos Lógicos Internos), AIE(Arquivos de Interfaces Externas), EE(Entradas Externas), CE(Consultas Externas), SE(Saídas Externas), assim como DER (Dados Elementares Relacionados) e RLR (Registros Lógicos Relacionados). É necessário contar os pontos de função e e transformar em esforço, de acordo com a produtividade da linguagem de desenvolvimento ( Programação).

 

Nesse sentido poderia lhe dizer que a Engenharia de Requisitos é um processo composto, onde possuo uma parte  relacionada com a Especificação de Requisitos de Negócio, na qual prevalece a concepção, levantamento, elaboração e negociação. Na segunda parte e, está é bastante técnica eu ainda teria a Especificação e Validação, as quais tratam do detalhamento com a utilização de vários diagramas e técnicas, tais como DER, DHS, DBD, os quais transformam o requisitos de negócio em especificações detalhadas para a construção do software.

 

A Programação somente ocorrerá após a Especificação técnica estar validada.

 

Como você pode notar, a maioria dos profissionais atua mais na Especificação de Requisitos de Negócio do que na Especificação Técnica de Requisitos de Negócio. Além do mais, temos ainda a questão de gerar produtos intermediários que seguem para análise de ponto de função e planejamento do projeto de software.

 

O treinamento que ministro olha o processo integralmente, define o que é Requisitos Funcionais e Não Funcionais, que tem a mesma importância na construção de um software. Seria impossível no prazo que temos para esse treinamento, entrarmos em técnicas de apoio, tais como UML, DER, DHS, DBD, Function Point, Planejamento e Desenvolvimento. O treinamento procura estabelecer e ensinar como se faz uma Especificação de Requisitos de Negócio consistente. Afinal, se não soubermos caracterizar corretamente a necessidade do usuário, construiremos softwares sem nenhuma aderência ao requisito do usuário, o que remeterá a manutenções pós entrega e aumento de custo dos projetos, além de impactarmos nos prazos do negócio.

 

Por onde começar?

 

Por uma questão lógica você deve começar pelo fundamento da Engenharia de Requisitos, pois os produtos gerados dessa área de conhecimento vão subsidiar a Análise por Pontos de Função e posteriormente o Planejamento do Projeto de Software. Na Engenharia de Requisitos, aprendemos o quão importante é a caracterização do escopo de desenvolvimento, de acordo e compromissado com as partes interessadas, ou seja, o usuário solicitante. O escopo permitirá que se analise a complexidade, riscos, recursos tecnológicos e humanos, custos envolvidos, alinhamentos com as estratégias de negócio, inclusive para decidir sobre desenvolver ou adquirir soluções prontas do mercado.

 

Assim, resumindo, faça um bom curso de Engenharia de Requisitos, depois faça um bom curso de Análise de Ponto de Função, se possível busque uma certificação pelo IFPUG ( Internacional Function Point Users Group). Finalmente faça um curso de Gestão de Projetos baseado no PMI - PMBoK. Você terá cumprido um ciclo completo que lhe habilitará a ser um bom Gerente de Projetos.

 

Quais são as diferenças entre Engenharia de Requisitos e Análise de Requisitos?

 

Bem, nessa pergunta a minha resposta é: A Engenharia de Requisitos engloba a Análise de Requisitos. Se, conforme citado anteriormente, em uma primeira fase você captura a necessidade do usuário e levanta informações, elabora desenhos de simulação funcional e valida o escopo, em seguida, você utiliza uma série de técnicas para desdobrar o escopo em suas funções e regras de negócio, para obter a melhor solução para a construção do software. Na análise você vai identificar como as informações de entrada são processadas por uma função ou funcionalidade do software para gerar as saídas requeridas pelo negócio ou partes interessadas. Dependendo da profundidade da análise, você poderá definir funções, atributos, funções de transação  e função de atualização de banco de dados poderá identificar as hierarquias internas do software e até mesmo gerar Especificações de Programas e Português Estruturado. Ainda poderá definir o Programa de testes funcionais ou de negócio, que ajudará ao usuário chave homologar a solução.

 

Espero que eu tenha lhe ajudado na decisão de fazer o curso do Grupo treinar."

 

Autor: Sergio Richter Ayres

 

 

A seguir referencio dois vídeos sobre o assunto:

 

1) A importância da Engenharia de Requisitos

 

 

2) Lecture - 5 Requirements Engineering / Specification